July 31, 2025

Secret Manager

📘 ¿Qué es AWS Secrets Manager?

AWS Secrets Manager es un servicio completamente administrado que te permite almacenar, proteger, rotar y acceder de forma segura a secretos como contraseñas, tokens de API, claves de base de datos, y más.

Automatiza la gestión de secretos, reduciendo el riesgo de exposición y facilitando la seguridad en aplicaciones distribuidas y en la nube.


🧠 ¿Para qué sirve?

  • Guardar secretos de forma segura (cifrados con AWS KMS)

  • Acceder programáticamente a secretos desde apps y servicios

  • Rotar secretos automáticamente (p. ej. para bases de datos)

  • Eliminar secretos antiguos con control de versiones

  • Integrarse con IAM para acceso granular

  • Auditar accesos a secretos mediante CloudTrail


🔑 Tipos de secretos que puedes almacenar

  • Contraseñas de bases de datos (MySQL, PostgreSQL, RDS, etc.)

  • Claves de API (por ejemplo, Stripe, Twilio, etc.)

  • Tokens OAuth y JWT

  • Claves SSH o de cifrado

  • Credenciales de servicios externos (GitHub, DockerHub)


🧩 Componentes clave

ComponenteDescripción
SecretEl valor que quieres proteger (ej. contraseña)
Versión del secretoCada vez que actualizas el secreto, se crea una nueva versión
Rotación automáticaActualiza el secreto con una Lambda configurada
Cifrado KMSTodos los secretos se cifran en reposo con AWS KMS
Políticas de accesoControl de acceso mediante IAM o políticas del recurso

⚙️ Cómo funciona

  1. Guardas un secreto en Secrets Manager (ej. prod/db/password)

  2. Se cifra automáticamente con una clave KMS

  3. Aplicaciones acceden al secreto mediante SDK, CLI o consola

  4. Puedes configurar rotación automática con un Lambda (opcional)

  5. Todos los accesos y cambios quedan registrados en AWS CloudTrail


🔄 Rotación automática

Secrets Manager permite automatizar la rotación de secretos mediante un Lambda que siga una estructura esperada.

ComponenteFunción
Lambda de rotaciónScript que conecta con el servicio (ej. DB), genera nueva credencial, valida y actualiza
Intervalo configurableDiariamente, semanalmente, etc.
Soporta RDS y otros secretos personalizadosRotación integrada con RDS, Aurora, Redshift y más

🔒 Seguridad

  • Cifrado con AWS KMS (clave por defecto o personalizada)

  • Control de acceso fino con IAM y políticas por secreto

  • Integración con AWS CloudTrail para auditorías

  • Compatible con redes privadas mediante VPC endpoints


💰 Precios

ConceptoPrecio aproximado
Almacenamiento de secretos$0.40 por secreto/mes
Rotación automática$0.05 por cada 10,000 llamadas de API
Acceso a secretos vía SDK/APISin costo adicional relevante (dentro de cuotas estándar)

Precios exactos: https://aws.amazon.com/secrets-manager/pricing/


🧠 Preguntas tipo certificación

  1. ¿Qué servicio de AWS permite almacenar y rotar secretos de forma segura?

    • ✅ AWS Secrets Manager
  2. ¿Qué servicio se utiliza para cifrar los secretos?

    • ✅ AWS KMS
  3. ¿Secrets Manager puede rotar automáticamente contraseñas de bases de datos?

    • ✅ Sí
  4. ¿Cómo se accede a un secreto desde una app?

    • ✅ Mediante AWS SDK o CLI usando permisos IAM
  5. ¿Secrets Manager guarda un historial de versiones?

    • ✅ Sí, puedes restaurar versiones anteriores

📚 Recursos útiles


✅ Casos de uso

  • Guardar credenciales de bases de datos para aplicaciones Lambda o EC2

  • Reemplazar variables de entorno inseguras en contenedores

  • Rotar automáticamente contraseñas de usuarios de RDS

  • Gestionar claves API de servicios de terceros


📦 Comparativa rápida: Secrets Manager vs Parameter Store

CaracterísticaSecrets ManagerSSM Parameter Store (Advanced)
Rotación automática✅ Sí❌ No
Optimizado para secretos✅ Sí⚠️ General-purpose
Precio$$ (más barato en estándar)
Cifrado con KMS✅ Sí✅ Sí